package com.hxkj.domain.po;

import java.io.Serializable;
import java.util.Objects;

/**
 * @author: chenwei
 * @version: 1.0
 * @datetime: 2018-06-05 19:32:55
 */
public class Navigation implements Serializable {


    private static final long serialVersionUID = 1138190685498880273L;
    // 主页导航栏id
    private Long navigationId;
    // 导航栏名称
    private String navigationName;
    // 排序
    private Byte sortNumber;
    // 导航栏链接
    private String navigationUrl;
    // 删除标识,0为正常状态,1为删除状态
    private Integer delTag;
    // 上级导航栏id,0为顶级导航栏
    private Long parentNavigationId;
    // 文章id
    private Long articleId;
    // 站点id
    private Long siteId;
    // 更新时间
    private Long updateTime;
    // 创建时间
    private Long createTime;
    //启用标识0是启用,1是禁用
    private Integer isEnable;
    //批量删除id字符串
    private String navigationIds;
    //静态页面模板id
    private Long templetId;
    //静态页面地址
    private String manuscriptPath;
    //外部访问路径
    private String webUrl;
    //打开方式,0默认当前页面,1是新开标签页
    private Integer openType;
    //导航栏略缩图
    private String navigationImg;
    //备注
    private String comment;
    //频道id
    private Long channelId;
    //用于模糊搜索的keyword
    private String keyword;

    public String getKeyword() {
        return keyword;
    }

    public void setKeyword(String keyword) {
        this.keyword = keyword;
    }

    public Long getChannelId() {
        return channelId;
    }

    public void setChannelId(Long channelId) {
        this.channelId = channelId;
    }

    public String getComment() {
        return comment;
    }

    public void setComment(String comment) {
        this.comment = comment;
    }

    public String getWebUrl() {
        return webUrl;
    }

    public void setWebUrl(String webUrl) {
        this.webUrl = webUrl;
    }

    public Integer getOpenType() {
        return openType;
    }

    public void setOpenType(Integer openType) {
        this.openType = openType;
    }

    public String getNavigationImg() {
        return navigationImg;
    }

    public void setNavigationImg(String navigationImg) {
        this.navigationImg = navigationImg;
    }

    public Long getTempletId() {
        return templetId;
    }

    public void setTempletId(Long templetId) {
        this.templetId = templetId;
    }

    public String getManuscriptPath() {
        return manuscriptPath;
    }

    public void setManuscriptPath(String manuscriptPath) {
        this.manuscriptPath = manuscriptPath;
    }

    public Byte getSortNumber() {
        return sortNumber;
    }

    public void setSortNumber(Byte sortNumber) {
        this.sortNumber = sortNumber;
    }

    public String getNavigationIds() {
        return navigationIds;
    }

    public void setNavigationIds(String navigationIds) {
        this.navigationIds = navigationIds;
    }

    public Integer getIsEnable() {
        return isEnable;
    }

    public void setIsEnable(Integer isEnable) {
        this.isEnable = isEnable;
    }


    public String getNavigationName() {
        return navigationName;
    }

    public void setNavigationName(String navigationName) {
        this.navigationName = navigationName;
    }

    public String getNavigationUrl() {
        return navigationUrl;
    }

    public void setNavigationUrl(String navigationUrl) {
        this.navigationUrl = navigationUrl;
    }

    public Integer getDelTag() {
        return delTag;
    }

    public void setDelTag(Integer delTag) {
        this.delTag = delTag;
    }

    public Long getParentNavigationId() {
        return parentNavigationId;
    }

    public void setParentNavigationId(Long parentNavigationId) {
        this.parentNavigationId = parentNavigationId;
    }

    public Long getArticleId() {
        return articleId;
    }

    public void setArticleId(Long articleId) {
        this.articleId = articleId;
    }

    public Long getSiteId() {
        return siteId;
    }

    public void setSiteId(Long siteId) {
        this.siteId = siteId;
    }

    public Long getUpdateTime() {
        return updateTime;
    }

    public void setUpdateTime(Long updateTime) {
        this.updateTime = updateTime;
    }

    public Long getCreateTime() {
        return createTime;
    }

    public void setCreateTime(Long createTime) {
        this.createTime = createTime;
    }

    public Long getNavigationId() {
        return navigationId;
    }

    public void setNavigationId(Long navigationId) {
        this.navigationId = navigationId;
    }

    @Override
    public boolean equals(Object o) {
        if (this == o) return true;
        if (!(o instanceof Navigation)) return false;
        Navigation that = (Navigation) o;
        return Objects.equals(getNavigationId(), that.getNavigationId()) &&
                Objects.equals(getNavigationName(), that.getNavigationName()) &&
                Objects.equals(getSortNumber(), that.getSortNumber()) &&
                Objects.equals(getNavigationUrl(), that.getNavigationUrl()) &&
                Objects.equals(getDelTag(), that.getDelTag()) &&
                Objects.equals(getParentNavigationId(), that.getParentNavigationId()) &&
                Objects.equals(getArticleId(), that.getArticleId()) &&
                Objects.equals(getSiteId(), that.getSiteId()) &&
                Objects.equals(getUpdateTime(), that.getUpdateTime()) &&
                Objects.equals(getCreateTime(), that.getCreateTime()) &&
                Objects.equals(getIsEnable(), that.getIsEnable()) &&
                Objects.equals(getNavigationIds(), that.getNavigationIds()) &&
                Objects.equals(getTempletId(), that.getTempletId()) &&
                Objects.equals(getManuscriptPath(), that.getManuscriptPath()) &&
                Objects.equals(getWebUrl(), that.getWebUrl()) &&
                Objects.equals(getOpenType(), that.getOpenType()) &&
                Objects.equals(getNavigationImg(), that.getNavigationImg()) &&
                Objects.equals(getComment(), that.getComment()) &&
                Objects.equals(getChannelId(), that.getChannelId()) &&
                Objects.equals(getKeyword(), that.getKeyword());
    }

    @Override
    public int hashCode() {

        return Objects.hash(getNavigationId(), getNavigationName(), getSortNumber(), getNavigationUrl(), getDelTag(), getParentNavigationId(), getArticleId(), getSiteId(), getUpdateTime(), getCreateTime(), getIsEnable(), getNavigationIds(), getTempletId(), getManuscriptPath(), getWebUrl(), getOpenType(), getNavigationImg(), getComment(), getChannelId(), getKeyword());
    }
}
